<?php

header("Content-Type: text/plain; charset=UTF-8");
function change(&$arr) {$arr[] = 1;}
$start = microtime(true);
for($q=0; $q<5000; $q++) {change($a);}
echo microtime(true)-$start;
echo "\n";

function change2($arr) {$arr[] = 1; return $arr;}
$start = microtime(true);
for($q=0; $q<5000; $q++) {$a = change2($a);}
echo microtime(true)-$start;

exit;
function prepareArr(&$arr) {
    return count($arr) * 2;
}

function prepareArr2($arr) {
    return count($arr) * 2;
}

$a = array(1, 2, 3, 4, 5);
$s = microtime(true);
for ($i = 0; $i < 20000; $i++) {
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
    prepareArr($a);
}
echo (microtime(true) - $s)."\n";

$a1 = array(1, 2, 3, 4, 5);
$s = microtime(true);
for ($i = 0; $i < 20000; $i++) {
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
    prepareArr($a1);
}
echo (microtime(true) - $s)."\n";

$a2 = array(1, 2, 3, 4, 5);
$s = microtime(true);
for ($i = 0; $i < 20000; $i++) {
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
    prepareArr2($a2);
}
echo (microtime(true) - $s)."\n";

$a3 = array(1, 2, 3, 4, 5);
$s = microtime(true);
for ($i = 0; $i < 20000; $i++) {
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
    prepareArr2($a3);
}
echo (microtime(true) - $s)."\n";

?>